#ifndef _WIN_SYSVAR_HPP_
#define _WIN_SYSVAR_HPP_

typedef HANDLE				_sem_t;
typedef CRITICAL_SECTION	_mutex_t;

typedef struct {

	atomic_type			waiting;
    atomic_type			nsignal;

    _sem_t				wait_sem;
    _sem_t				wait_done;
	_mutex_t			lock;

}_cond_t;

typedef union {
    struct {
        unsigned int	num_readers_;
        _mutex_t		num_readers_lock_;
        _sem_t		write_semaphore_;
    } state_;
}_rwlock_t;


typedef struct {
	unsigned int n;
	unsigned int count;
	_mutex_t mutex;
	_sem_t turnstile1;
	_sem_t turnstile2;
}_barrier_t;

#endif
